package com.zpark.se.io.writer;

import java.io.FileWriter;
import java.io.IOException;

/**
 * 课程回顾：
 *      File类常用方法
 *      随机文件读取流RandomAccessFile
 *      字节输入流：InputStream->FileInputStream
 *      字节缓冲输入流：BufferedInputStream
 *      字节输出流：OutputStream->FileOutputStream
 *      字节缓冲输出流：BufferedOutputStream
 *
 *      字符输入流：Reader -> FileReader
 *      字符缓冲输入流：BufferedReader
 *      转换流：InputStreamReader  将字节流转为字符流，可以指定字符编码读取数据
 *
 *      字符输出流：Writer -> FileWriter
 *          向文件当中写数据，以字符的形式写入
 */
public class Demo01 {
    public static void main(String[] args) throws Exception {
        // 声明文件路径
        String path = "src/com/zpark/se/io/writer/a/b.txt";
        // 创建文件字符输出流对象
        FileWriter writer = new FileWriter(path);

        /*writer.write("辛苦遭逢起一经，干戈寥落四周星。" +
                "\n山河破碎风飘絮，身世浮沉雨打萍。" +
                "\n惶恐滩头说惶恐，零丁洋里叹零丁。\n人生自古谁无死？留取丹心照汗青。 ");*/
        /*
            writer.write("abc"): 写入一个字符串，以字符的形式写入
            如果每次都重新指向改程序，则每次写入数据之前回把源文件清空
         */
        // writer.write("人生自古谁无死？留取丹心照汗青。");

        /*
            writer.append("abc"): 写入一个字符串，以字符的形式写入
         */
        writer.append("辛苦遭逢起一经，干戈寥落四周星。" +
                "\n山河破碎风飘絮，身世浮沉雨打萍。" +
                "\n惶恐滩头说惶恐，零丁洋里叹零丁。\n人生自古谁无死？留取丹心照汗青。 ");


        // 关闭流
        writer.close();
    }
}
